<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Promise入门</title>
</head>

<body>
    <script>
        // 1. 使用new关键字实例化一个Promise对象, 提供一个函数作为构造器的参数.
        // 2. 该函数定义两个参数
        //      resolve:异步操作执行成功之后的回调函数
        //      reject: 异步操作执行失败之后的回调函数  

        const p = new Promise(function(resolve, reject) {
            //通过setTimeout模拟一个异步任务
            setTimeout(function() {
                //正常情况
                // resolve('success');
                //模拟失败的状态
                reject('error');
            }, 500);
        });
        //3. Promise实例生成之后,可以使用then方法指定resolve状态和reject状态的回调函数.
        p.then(function(data) {
            console.log('resolve状态', data);
        }, function(info) {
            console.log('reject状态', info);
        });
    </script>
</body>

</html>